
package com.crowdfunding.circle.config.param;

import java.sql.Timestamp;

import com.crowdfunding.circle.common.param.BaseParam;
import com.crowdfunding.circle.config.vo.ConfigInfoVO;

/**
 * 配置信息查询条件类
 *
 * @author 朱国军
 * @version 2015年12月21日 朱国军
 */
public class ConfigInfoParam extends ConfigInfoVO implements BaseParam {

    /** 查询开始数量 */
    private Integer startNum;

    /** 查询开始的页码：第一页为1 */
    private Integer pageNo;

    /** 查询每页显示数量 默认为10 */
    private Integer pageSize;

    /** 总数据条数 */
    private Integer dataCount;
    
    /** 总页码数 */
    private Integer pageCount;

    /** 查询排序字段 */
    private String orderField;

    /** 查询排序顺序 */
    private String orderDirection;

    /** 创建时间开始时间 */
    private Timestamp createTimeStart;

    /** 创建时间结束时间 */
    private Timestamp createTimeEnd;

    /** 更新时间开始时间 */
    private Timestamp updateTimeStart;

    /** 更新时间结束时间 */
    private Timestamp updateTimeEnd;
    
    @Override
    public Integer getStartNum() {
        return startNum;
    }

    @Override
    public void setStartNum(Integer startNum) {
        this.startNum = startNum;
    }
    
    @Override
    public Integer getPageNo() {
        return pageNo;
    }

    @Override
    public void setPageNo(Integer pageNo) {
        if (null == pageNo || pageNo == 0) {
            pageNo = 1;
        }
        this.pageNo = pageNo;
    }

    @Override
    public Integer getPageSize() {
        return pageSize;
    }

    @Override
    public void setPageSize(Integer pageSize) {
        if (null == pageSize || pageSize == 0) {
            pageSize = 10;
        }
        this.pageSize = pageSize;
    }

    @Override
    public void setDataCount(Integer dataCount) {
        this.dataCount = dataCount;

    }
    
    @Override
    public Integer getDataCount() {
        return dataCount;
    }

    @Override
    public String getOrderField() {
        return orderField;
    }

    @Override
    public void setOrderField(String orderField) {
        this.orderField = orderField;
    }

    @Override
    public String getOrderDirection() {
        return orderDirection;
    }

    @Override
    public void setOrderDirection(String orderDirection) {
        this.orderDirection = orderDirection;
    }

    /**
     * 设置创建时间开始时间
     *
     * @param createTimeStart 创建时间开始时间
     */
    public void setCreateTimeStart(Timestamp createTimeStart) {
        this.createTimeStart = createTimeStart;
    }

    /**
     * 获取创建时间开始时间
     *
     * @return 创建时间开始时间
     */
    public Timestamp getCreateTimeStart() {
        return createTimeStart;
    }

    /**
     * 设置创建时间结束时间
     *
     * @param createTimeEnd 创建时间结束时间
     */
    public void setCreateTimeEnd(Timestamp createTimeEnd) {
        this.createTimeEnd = createTimeEnd;
    }

    /**
     * 获取创建时间结束时间
     *
     * @return 创建时间结束时间
     */
    public Timestamp getCreateTimeEnd() {
        return createTimeEnd;
    }

    /**
     * 设置更新时间开始时间
     *
     * @param updateTimeStart 更新时间开始时间
     */
    public void setUpdateTimeStart(Timestamp updateTimeStart) {
        this.updateTimeStart = updateTimeStart;
    }

    /**
     * 获取更新时间开始时间
     *
     * @return 更新时间开始时间
     */
    public Timestamp getUpdateTimeStart() {
        return updateTimeStart;
    }

    /**
     * 设置更新时间结束时间
     *
     * @param updateTimeEnd 更新时间结束时间
     */
    public void setUpdateTimeEnd(Timestamp updateTimeEnd) {
        this.updateTimeEnd = updateTimeEnd;
    }

    /**
     * 获取更新时间结束时间
     *
     * @return 更新时间结束时间
     */
    public Timestamp getUpdateTimeEnd() {
        return updateTimeEnd;
    }
    
    @Override
    public void setPageCount(Integer pageCount) {
        this.pageCount = pageCount;
    }
    
    @Override
    public Integer getPageCount() {
        return pageCount;
    }
}
